home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- import gtk
- from gtk import gdk
- import pango
- import ibus
- from gettext import dgettext
-
- _ = lambda a: dgettext('ibus', a)
-
- N_ = lambda a: a
-
- class EngineAbout(gtk.Dialog):
-
- def __init__(self, enginedesc):
- self._EngineAbout__engine_desc = enginedesc
- super(EngineAbout, self).__init__(_('About'), None, gtk.DIALOG_MODAL, (gtk.STOCK_CLOSE, gtk.RESPONSE_CLOSE))
- self._EngineAbout__init_ui()
-
-
- def __init_ui(self):
- self.set_icon_name('gtk-about')
- sw = gtk.ScrolledWindow()
- sw.set_shadow_type(gtk.SHADOW_ETCHED_IN)
- sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
- self._EngineAbout__text_view = gtk.TextView()
- self._EngineAbout__text_view.set_size_request(400, 400)
- self._EngineAbout__text_view.set_editable(False)
- sw.add(self._EngineAbout__text_view)
- sw.show_all()
- self.vbox.pack_start(sw)
- self._EngineAbout__fill_text_view()
-
-
- def __fill_text_view(self):
- text_buffer = self._EngineAbout__text_view.get_buffer()
- self._EngineAbout__create_tags(text_buffer)
- iter = text_buffer.get_iter_at_offset(0)
- text_buffer.insert_with_tags_by_name(iter, '\n ', 'left_margin_16')
- text_buffer.insert_pixbuf(iter, self._EngineAbout__load_icon(self._EngineAbout__engine_desc.icon))
- text_buffer.insert_with_tags_by_name(iter, '\n%s\n' % self._EngineAbout__engine_desc.longname, 'heading', 'left_margin_16')
- text_buffer.insert_with_tags_by_name(iter, _('Language: %s\n') % ibus.get_language_name(self._EngineAbout__engine_desc.language), 'small', 'bold', 'left_margin_16')
- text_buffer.insert_with_tags_by_name(iter, _('Keyboard layout: %s\n') % self._EngineAbout__engine_desc.layout, 'small', 'bold', 'left_margin_16')
- text_buffer.insert_with_tags_by_name(iter, _('Author: %s\n') % self._EngineAbout__engine_desc.author, 'small', 'bold', 'left_margin_16')
- text_buffer.insert_with_tags_by_name(iter, _('Description:\n'), 'small', 'bold', 'left_margin_16')
- text_buffer.insert_with_tags_by_name(iter, self._EngineAbout__engine_desc.description, 'wrap_text', 'left_margin_32')
-
-
- def __create_tags(self, text_buffer):
- text_buffer.create_tag('heading', weight = pango.WEIGHT_BOLD, size = 16 * pango.SCALE)
- text_buffer.create_tag('bold', weight = pango.WEIGHT_BOLD)
- text_buffer.create_tag('italic', style = pango.STYLE_ITALIC)
- text_buffer.create_tag('small', scale = pango.SCALE_SMALL)
- text_buffer.create_tag('gray_foreground', foreground = 'dark gray')
- text_buffer.create_tag('wrap_text', wrap_mode = gtk.WRAP_WORD)
- text_buffer.create_tag('left_margin_16', left_margin = 16)
- text_buffer.create_tag('left_margin_32', left_margin = 32)
-
-
- def __load_icon(self, icon):
-
- try:
- pixbuf = gdk.pixbuf_new_from_file_at_scale(icon, 48, 48, True)
- except:
- theme = gtk.icon_theme_get_default()
- icon = theme.lookup_icon('ibus', 48, 0)
- if icon == None:
- icon = theme.lookup_icon('gtk-missing-image', 48, 0)
-
- pixbuf = icon.load_icon()
-
- return pixbuf
-
-
-